


Jump Into the Fog

by maginot



Category: Voltron: Legendary Defender
Genre: Angst, Biting, Blood Kink, Blow Jobs, Casual Sex, Cheating, Derogatory Language, Dom/sub, Fist Fights, Infidelity, Light Angst, M/M, Master/Pet, Name-Calling, Penis In Vagina Sex, Pining, Public Sex, Smut, Threesome - M/M/M, Trans Keith (Voltron), Trans Male Character, Unhealthy Relationships, Vaginal Fingering, trans James Griffin
Language: English
Status: Completed
Published: 2018-09-28
Updated: 2018-09-28
Packaged: 2019-07-18 20:07:21
Rating: Explicit
Warnings: Creator Chose Not To Use Archive Warnings
Chapters: 1
Words: 6,144
Publisher: archiveofourown.org
Story URL: https://archiveofourown.org/works/16125791
Author URL: https://archiveofourown.org/users/maginot/pseuds/maginot
Summary: “This reminds me of something. Can’t you remember it? All those times before?”Keith remembers, has remembered since he saw James melt the minute Shiro spoke to him in the meeting. He used to do this to Keith before, back then. He would get Keith all riled up about Shiro and then somehow, always, Keith would end up on his knees.“It won’t end up like before.” Keith swears.James smiles at him again and the fury inside Keith’s body turns white hot. “Are you sure about that?”





	Jump Into the Fog

**Author's Note:**

> If you're looking for healthy and happy shiro/james/keith, this isn't it. 
> 
> Keith and James' genitalia will be refereed to with masculine terms! 
> 
> "----" indicate a time skip!
> 
> Title taken from the Wombats’ song, which for the record, is a great jeith song.

Keith almost has to look twice to recognize him. 

According to Sam, it’s been five years since the last time he’s had his feet on Earth’s soil, and maybe that’s why it takes a second longer than it has any business taking. Maybe it’s because he’s gone from a kid to a _man_ during a time when Keith hadn’t had the mind to give him a single thought. Now though, as Keith’s watching him and being watched by him-- the two of them in some kind of standoff without a purpose or an end, sizing each other up just as they had years ago-- Keith’s mind finally finds the room to think about James Griffin again. 

James’ eyes narrow and he pushes himself off of the humvee he’s leaning against, body taught with what Keith can recognize as fury. 

He remembers that he never said goodbye to James before he got launched into space inside the blue lion. 

Then, he remembers he never had the decency to break up with him either. 

Out loud, Keith swears, “Fuck.” 

..

Keith learns quickly that James hates him, hates him so openly and visibly that even Allura asks Keith if they’d known each other before, if they’d disliked each other back then too. Keith answers, “No, we didn’t,” and hopes that James can hear his reply, hopes that James gets pissed enough at Keith’s lie to fill in some of the blanks that even Keith is missing. 

Keith almost feels guilty about it all. What they had back then wasn’t deep or emotional or anything like he and Shiro have now. They weren’t confessing their love every night. They weren’t holding each other to fall asleep. But Keith can’t help but feel the pull behind his navel whenever he thinks about James waking up one day to find his boyfriend missing, and missing with the love of his life nonetheless. 

Even back then, Shiro had been Keith’s everything.

For the third time this meeting James glares and practically spits an answer out at Keith and for the third time, Keith can feel Shiro tensing up next to him. This time Shiro speaks, asking Keith’s question in a different way. 

James gets dipped into warm honey as Shiro speaks and when he answers, his voice is gentler, his answer accommodating, his body language opens up and every ounce of guilt that Keith feels slips away. 

He reaches down and squeezes at Shiro’s knee posessively, meeting James’ eyes. If he wants to play this game with Keith again, Keith knows the outcome will be the same. 

No matter how much James sucks up, how talented he is, how pretty he is, how much he bats his fucking long eyelashes in Shiro’s direction, Keith will always, always be Shiro’s favorite. 

Keith turns his gaze back to the presentation in front of him and lets his hand slide up Shiro’s thigh, feeling James’ eyes burning into him the entire time. 

…

_Keith’s eyes close as he takes the first inhale of his cigarette._

_“Now, now, Cadet, I don’t think you’re supposed to be smoking.” The voice in Keith’s ears makes his eyes fly open. He recognizes it._

_“Gonna tattle on me, Griffin?” The gravel on the rooftop crunches as James takes steps towards where Keith’s sitting, leaning up against a metal vent. Keith follows him the entire way._

_“Even if I did, Shirogane would just get you out of it.”_

_Keith feels his eyes narrow instinctively at Shiro’s name. They narrow further as Keith studies James’ face more, unable to figure out what he’s doing here if he isn’t going to rat Keith out to look good. Keith takes a drag of his cigarette and lifts his head to blow the smoke up into the night. “What do you want, James?”_

_James bends down overtop of Keith, using his hand to brace himself on the vent next to Keith’s head. The only time they’ve been this close before was when Keith was punching him, but this doesn’t feel anything like that. James plucks the cigarette out of Keith’s fingers carefully, and it’s only due to shock that Keith lets him. “I want the same thing you do,” James says, his voice coming out low in a way that makes Keith take a breath. “And neither of us can have him.” James lifts Keith’s cigarette to his lips, lets his eyes flutter shut for a beat as he inhales. When he exhales, his lips form a perfect circle and Keith watches them the entire time._

…

Keith doesn’t even have to buy the pack of cigarettes, the merchant selling them in the tent across from the makeshift bar Keith’s found himself at recognizes him and just gives them to him. Keith had been aware that his face has been shown on every broadcast relating to the end of the Galra invasion for months, but he’s still surprised by his lack of anonymity sometimes. 

He breathes a quiet thank you and blames the fact that he hasn’t had a cigarette in five years on the calm he feels when he escapes back to the crowded bar.

Keith buys a beer and lights a cigarette. His head feels light and buzzy after the first drag of it, his lungs burning as the unfamiliar smoke fills them. He exhales and he swears he can feel his body turning toxic, feels the poison of the cigarette infiltrate his bones. He takes another drag.

When he exhales again, he sees James through the haze of the smoke.

Their eyes meet through it, and then Keith can’t do anything but watch as James heads to the bar to buy his own drink. Keith knows he could get up and leave, go home and wait for Shiro to get done whatever meeting he’s in, but he doesn’t. He doesn’t feel like he can, with James smiling at the bartender like he owns her. Instead, Keith puts his foot on the other chair at the table and waits. He knows where James is going to try and sit. 

He’s right, and when James pulls the other chair at Keith’s table out, Keith lets his foot fall to the floor. 

Their eyes are locked onto each other, a challenge that neither of them will back down from— Keith knows this, doesn’t try to change it. 

“Didn’t think you’d still smoke, Hero Boy.” He’s grinning, an eyebrow raised, and suddenly they’re sixteen again. 

Keith raises his eyebrows, lifts his cigarette back up to his lips and inhales. The embers of it light the bottom of his vision a fiery orange. “Some old habits die hard.”

James smiles then, but it’s not friendly, it’s a smile that’s dirty and messy with danger. “Like Lieutenant Shirogane? Well, I guess he’s Captain Shirogane now.”

Keith’s fingers tighten around the beer bottle at the mention of Shiro. He forces them lose, takes a drag of his cigarette to try and keep his body neutral. By the look on James’ face, however, he knows that he’s failed.

“What about him?”

“I’m just saying, it’s been a long, long time that you’ve been carrying that one Keith.” He leans back in his chair and takes a pull from his bottle that makes his throat bob as he swallows. “Seems like your old habit finally paid off. You make an awfully pretty pet for him.”

Keith’s body doesn’t tense this time, but his voice does. “I’m not his _pet.”_

James chuckles, low and dirty. “Of course you are. You’ve been nothing but his little friend for a decade and _now_ he loves you?”

Keith snarls, leans forward in his chair and James meets him halfway, sitting up too. “Watch your fucking mouth, Griffin.” 

James is closer now, leaning all the way in, and Keith can feel his breath hot against his face. “What did it, Keith? Did you finally get to suck his cock like you’ve always dreamed about? Did you do it how I taught you to, Keith? Use all the old tricks I taught you to finally get your man?”

Keith’s blood is boiling hot under his skin, a fury prickling on the insides of his brain creating storm clouds everywhere. The bar is relatively quiet around them, and the one last working part of Keith’s brain knows he can’t knock Griffin’s lights out inside of it. He calmly stands up, butting his cigarette and finishing off his beer. Then he rounds the table and wraps his hand around James’ bicep, digging his fingernails in and pulling him up. He can tell his strength surprises Griffin, and he goes without a fight, his eyes wide for a moment. Keith leans in close to his ear and growls, “I think we should finish this conversation outside, don’t you?”

Griffin turns his head into Keith’s, forcing Keith’s mouth against his ear. He says, “I’d love to.” And it’s so fucking smug that it takes all of Keith’s energy to keep from throwing him out the door.

Keith settles for shoving his back as hard as he can against the brick wall outside the bar. James goes, and he goes too easy. He expected it. He wanted it. The realization makes Keith shove him against it again for good measure. 

James bites his lip. “This reminds me of something. Can’t you remember it? All those times before?”

Keith remembers, has remembered since he saw James melt into a cock-hungry slut the minute Shiro spoke to him in the meeting. He used to do this to Keith before, back then. He would get Keith all riled up about Shiro and then somehow, always, Keith would end up on his knees.

“It won’t end up like before.” Keith swears. 

James smiles at him again and the fury inside Keith’s body turns white hot. “Are you sure about that, _pet_?”

Keith stops thinking then, and it takes his brain a full second longer than the rest of his body to catch up to what he’s doing. He punches James square in the jaw. 

When Keith’s mind makes it to the finish line there’s a split second of regretful panic but it’s gone just as quickly as it came, because James makes a noise that doesn’t sound like a noise that someone would make after getting hit.

It sounds like a noise someone would make while they’re getting fucked. 

Keith watches as James’ cocky smile returns as quickly as it left. Blood drips from his nose— now broken— and flows down over his lips. He runs his tongue over his lips and catches some of it to taste. “Is that all you’ve got?” He’s laughing as he says it, a loud mocking laugh that keeps Keith’s stomach in knots, twisting him up. Keith steps in close again— maybe to hit him again or maybe to start to scream— and Keith doesn’t realize he’s too close until James runs his thumb over the blood on his lip before he pops it into his mouth and _sucks_. 

Then, Keith stops thinking altogether. 

His body is on James’ in an instant, pressing him as hard as he can against the brick wall, shoving a leg between his, Keith’s hands in James’ hair to keep him still as their mouths press together and Keith tastes blood. He bites at James’ lips, knocks their noses together in a way that he knows hurt, pulls so hard at James’ hair that he can hear the way his breath hitches from it. One of his hands leaves James’ hair and finds its way to his ass, grabbing hard and shoving James down on his thigh where he wants him.

The other hand lets go of James’ hair too and without any warning, Keith wraps it around James’ throat. He knows James will like it. He remembers. “I’ve got a lot more than that, Cadet.”

James doesn’t answer, because Keith doesn’t give him a chance to, smashing their lips back together with as much force as he can muster. His body’s a livewire— thrumming with the kind of electricity that only James can give him, that he didn’t know he missed, that he _despises_. 

He hears James’ breath coming out in little huffs, Keith’s hand still tight around his throat. James is moving his hips now, trying to fuck himself on Keith’s thigh. “Who’s the pet now?” Keith snarls against James’ lips. “You’re rubbing off on my leg like a dog in heat, you fucking bitch.” He pulls James’ body closer to his and rolls his own hips to give something for him to grind down on just to hear him pant. He does, and Keith gives him a laugh that makes way to a groan.

He’s so turned on he can barely stand it, so hard he’s aching, the only thing running through his mind is how he just wants to take James apart right here, right now. That’s what Keith does taking both his hands off of James’ body and using them to undo his jeans. He doesn’t need to take them off, just needs to open them enough to get his hand inside. Before he does, he takes two fingers of his right hand and offers them to James. “Suck.”

James does, knowing that it’s all he’s gonna get. He latches on to Keith’s fingers and hollows his cheeks, bobbing his head like he’s got a cock in his mouth. “Good pet,” Keith grunts. James’ eyes flutter shut, and Keith can’t decide what he hates more at this moment: James for liking it so much or himself for giving it. Keith’s fingers are dripping wet when he takes them out of James’ mouth and shoved them inside his jeans. There’s nothing gentle about it, nothing slow or searching. Keith knows James’ body, and more than anything, Keith knows he wants to fuck him. He shoves his wet fingers inside of James in one go and James makes a sound like all the air has been punched from his lungs. His body crumples just slightly into Keith’s, and that’s all the sign Keith needs. 

“You better keep fucking quiet,” he warns. Then he fucks him. 

Keith starts out rough, pushing his fingers as hard inside James as they can go at this angle before easing them out. He keeps a punishing pace, listening to the way James’ breaths and moans can’t seem to keep up. His eyes are squeezed tight, his face still smeared with blood, biting at his own lip to keep himself quiet. He’s being so obedient that Keith has to wonder if he’s been thinking and hoping for this moment since he saw Keith again. Keith quirks his fingers, rolling them in a half circle inside of James and that makes his hands fly to Keith’s shoulders for purchase. He’s coming apart at the seams. Keith’s so hard he thinks he could come just from watching him. 

Keith keeps at it, feels how tight James is around him, his body moving with each trust of Keith’s fingers inside of him. He fucks him, and keeps fucking him and rubs inside of him where Keith knows he’ll feel it. James makes a moan so high and needy— so loud and threatening and Keith can’t do anything put press their lips together again to quiet it. When James is nothing but hitching breaths Keith asks him, “You gonna come for me, pet? You gonna make a mess right here in your pants?”

“Uh-huh, yeah,” James groans, completely giving himself over to the goodness of it all. Keith can’t help it, he feels powerful like this, like he’s just won a battle, victorious. Having James under him like this in such a stark contrast to how he was before makes Keith feel too big for his skin, always has. James is tightening up around him, hips moving, breath coming out quick and Keith knows he’s close, knows he’ll come just from this. He does just a moment later, leaning forward to kiss Keith as he does, moaning into his mouth as his body gets tight and he rides it out.

He’s still pulsing around Keith’s fingers when Keith tells him, “You’re pathetic,” because that’s what he is. Keith knows now that James has wanted this for months now, probably obsessed over it and figured out the best way to get it— outside of a shitty bar letting Keith fuck him like a stray animal. James looks at him, expression an equal mix of hot and hurt. Keith says, “Get on your knees and suck my dick, bitch.”

James blinks at him, eyes big and shocked but Keith waits, he waits and he undoes his belt and jeans and doesn’t have to wait any longer than that, because as soon as his pants are open James drops. He just drops with his knees on the ground like he was made for it, scrambling to get Keith’s pants down enough to get his dick out and looking up at Keith like he’s got the answer to any question in the world. 

“Yeah that’s right,” Keith groans as he feels James’ hot breath ghost his dick. He’s so hard it hurts and he knows this will be quick but he doesn’t think he cares. James wraps his lips around Keith’s dick, sucking hard from the start just how Keith has always liked it. Keith’s hands fly to James’ hair and grip it tight. His hips buck up into James mouth and he pulls James’ head down tight against him, wanting to feel all that he can. He hears his own breath heavy in his ears, hears James moan around him beneath him.

“Fuck,” Keith swears, tipping his head back in the air and letting his eyes shut for a moment. He feels himself dripping wet between his thighs and a moment later, feels James’ hand against them. James gives him one finger, and Keith hates how unsteady it makes him for a moment, hates how it makes him gasp and tighten up. He’s close already, not to his surprise. He fucks James’ mouth as James works him, and it’s not long before Keith feels himself start to come. He grips James’ hair as hard as he can and fucks his hips up again and again, riding it all out.

He gives himself a moment like that— blissed out and sated— And comes back to himself when James zips up his pants and stands up. He looks like he wants to say something smart, but he always does. Keith stops him, pushing him up against the wall once more before he’s growling in James’ ear, dark and dangerous as threatening as he can be, “Listen here. This? You and I? This is never happening again. You hear me? Never. And if you so much as look at Shiro again I’ll fuck you up. You stay away from what’s mine, Griffin.”

With a final push Keith turns and walks away. He hears James laughing behind him, egging him on, trying to rile him up one last time to get the final word. He doesn’t doesn’t look back, doesn’t stop walking, doesn’t give that little shit the time of day.

It isn’t until Keith reaches the end of the street that he realizes his own mouth is covered in James’ blood.

….

The next night, Shiro runs late coming home. Keith sits on the living room couch and waits for him. He knows where he is. 

It stings more than Keith thought it would to hear how quickly it took James to get Shiro to fuck him behind Keith’s back. It stings even worse when Shiro’s eyes flash with the hurt of knowing that Keith did it first.

That’s when they decide to invite him into their bed. Keith and Shiro have always handled problems better together. 

They do, and for a moment, when James’ eyes are shut in ecstasy as Shiro fucks him and Keith rides his fingers— both of them reminding James of his place, remind him that he’s nothing more than their pretty plaything to use when they feel like it— Keith is almost happy for him. 

\---------------

They have their dynamic. They have the things that they do and say and this isn’t one of them. 

“Keith, what did I just say?” Shiro asks and Keith honestly doesn’t remember because whatever Shiro said to him sounded like it was meant for James. His voice was rough and mean— disciplinary. 

“I-I-“ Keith sputters, so taken off guard that he’s lost his footing. He hears James laughing quietly next to him. 

Shiro grabs him hard by the hair on the back of his neck (the _scruff_ , his brain supplies) and Keith arches into the stinging touch. “I told you to get on your knees, boy.”

Shiro’s eyes are locked into Keith’s and he nods, says, “Yes, Sir,” before doing as he’s told. The tile floor is cold on his knees and there, looking up at both James and Shiro he’s suddenly aware of how hard he is.

Then Shiro grips James chin in a way that’s somehow both possessive and dismissive. He gives James a kiss and James, ever the slut, melts into it. Shiro pulls away dragging James’ bottom lip with him between his teeth and plainly commands, “Down.” He points at the ground when he says it, exactly like he does when he commands Kosmo. James follows Shiro’s orders without any hesitation, which isn’t anything new, dropping down on his knees next to Keith. 

The one side of Shiro’s mouth lifts up into a little smirk. “What good boys I have.” Keith can see a bead of precome welling up at the tip of Shiro’s dick and he finds himself nodding, mind thinking, ‘ _I’m a good boy, I’m a good boy_ ,’ over and over again like if Shiro believes him Keith will get to hold out his tongue and wait for the drop of come to fall onto it. 

Instead Keith just gets to watch as it drips from Shiro’s dick onto the floor. Keith watches it all the way down, knowing he’s unable to stop the disappointment from crossing into his facial features. He looks back up at Shiro’s dick and pants a little— desperate and needy— and he prays that maybe he’ll get to catch the next one. Shiro notices and James must look the same way too because he says, “You boys sure do look hungry.” 

Two voices ring out ,”Yes, Sir,” and Keith feels his cheeks turn red and get hot from the humiliation of it all. Somehow, James being with him makes this even worse. 

Shiro brings his hand down over his cock and pumps it once, twice and Keith’s mouth starts to water. Then he says, “Go ahead, boys, lick it.”

They scramble over to Shiro’s dick embarrassingly fast and Keith moans when his tongue makes contact with Shiro’s dick for the first time. He beats James to the head of it to lick off the precome, but James’ mouth is is around the base of it, placing sloppy open-mouthed kisses all over. His eyes flutter shut as he moans. Keith licks and suckles over Shiro’s dick, resisting the urge to purr or whine or whatever the fuck is going on inside of him. Above him, Shiro groans and Keith feels one of Shiro’s big hands come down to the top of his head to _pet_ him. Keith moans again, body shivering and he lifts his hand out of his lap to place it upon Shiro’s leg. 

“Nuh-uh, Keith.” Shiro’s hand in his hair pulls his head up. “I didn’t say you could use your hands.” 

Keith gapes. He’s not used to getting scolded and rapid apologies start pouring out of his mouth but it doesn’t matter, Shiro’s too busy talking to hear him, saying, “Oh, that’s a good boy, James.” James moans, pleased, his eyes flicking upwards to Shiro’s before flicking to Keith’s. His gaze is hot and smug and it takes all of Keith’s effort to not growl right there on his knees. The hand in his hair pulls once more. “Get back to it, Keith.” And Keith does. He meets James where he is this time, both of them working their way up and down Shiro’s cock, open-mouthed and hot, tongues bumping the entire way. They’re both moaning a little, squirming a little and Keith doesn’t know if he’s ever been this hard in his life. 

Shiro’s moans start to crack in his throat and he groans, “Sit up boys. Yeah, that’s right,” he says when they do. His dick is in his hand. Keith’s body’s practically shaking with want. “Open your mouths now.” And they do. Shiro stands over them and strokes his dick and then he comes. Keith closes his eyes when the first drop of it hits his cheek and he moans as he feels it on his face, his neck, in his _mouth_ and he hears James moaning too. 

“Fuck,” Shiro groans, long and drawn out. “Look how pretty my boys look covered in my come. My pets are so messy.” That makes Keith open his eyes. He looks over at James and Shiro’s right, he’s a mess— face covered in come and mouth messy from sucking Shiro off in the first place. He knows he looks the same. “Now,” Shiro commands, “clean each other up.” 

“Thank you,” Keith’s saying before he can help it. Shiro’s come already tastes so good in his mouth that there’s nothing that sounds better than licking it up off of James. He faces James, still on his knees and takes the initiative— grabbing him and pulling him close to lick up the long stripe of come on his cheek. It’s filthy really, both of them licking each other’s faces like animals giving themselves baths. James finds the spot of come on Keith’s neck and sucks it off before biting down. Keith cries out, grips James’ hair and then he decides he needs to taste Shiro’s come in James’ mouth too. The kiss is messy and made up of tongue and teeth— both of them hungry for it and aching. 

They get lost in each other for a moment, grabbing at each other recklessly, and Shiro likes it, swears under his breath and says, “Good boys.” Keith feels James’ shiver and knows that they’re both gone. 

\-------------------

Keith tries to sleep. He really does. He’s flying out with the rest of team Voltron tomorrow and the last thing he wants to be is tired and distracted. His body’s so tired he normally wouldn’t have any problem sleeping like this, but he does. He does because tonight, everything had gone wrong. 

They’ve been doing this for awhile now, he and Shiro sleeping with James. 

He had tried his best to be good but there James was, there to suck Shiro’s dick and distract Keith as usual. James always finds a way to distract Keith and tonight was the same, the only difference being just how badly Keith let himself react to it and how much Shiro noticed.

Keith got to sit on the floor and watch as James got all the praise, got all the attention, got to come. 

He tried to sleep, but instead he found himself here— outside of James’ door. He knocks.

There’s a moment of pause and unspoken question, because there always is with them but it’s over and James’ tongue is in Keith’s mouth and Keith’s biting at it, his hands are pulling James’ hair and as soon as the door is shut Keith’s being shoved against it, his leg hooked around James’ waist by a hand on his thigh. 

James knows how hard he must be and uses it to his full advantage, shoving his thigh between Keith’s and laughing after Keith groans. 

They don’t speak, and Keith knows they won’t. What would there even be to say? 

‘Does your boyfriend know you’re here?’

‘No. Are you going to tell him?’

‘No.’

Keith grips James’ hair, wraps it around his fingers and _pulls_ and James takes his own pants off before taking Keith’s off too. Actions speak louder than words anyway. 

James presses his body up against Keith’s, pins his hands up against the door and Keith lets him, doesn’t know why he’s letting him, only knows how good James feels against him and how badly he wants to get off. James noses Keith’s head to the side and kisses Keith’s neck before sucking it and sinking his teeth in. Keith moans and it doesn’t even occur to him that James could leave a bruise before he feels James’ body go still for just a moment before his teeth leave Keith’s neck at once.

Suddenly, Keith remembers earlier, remembers James looking up with big eyes at Shiro, saying, “I always wanna be your good boy, Shiro.” It clicks into place in Keith’s brain again why he’s there at all and with a growl he tears his hands free from James’ flimsy grip. James is stunned for a moment and Keith uses it, flipping their positions and getting James up against his door so hard his breath leaves his lungs in a huff. 

He’s not letting James win this time too. 

James raises an eyebrow in surprise, face flushed and lips—bitten pink— quirk up into a shit-eating grin. Keith growls at that, honest to god _growls_ because he knows that James knows exactly what’s caused the shift in his behavior. James worked his way inside Keith’s head years ago and hasn’t left since. It’s never stopped frustrating Keith in a way that he doesn’t know what to do with, so what does what he wants to do and leans down to sink his teeth into James’ neck, proprietary. James moans, and the thrill of hearing it is just as good as the knowledge that James will have to explain to Shiro where the bite marks came from, and that James will lie. 

Keith grips James’ jaw in his hand, gripping it hard, shaking it around a bit to get James’ attention fully on him. He takes two fingers of his other hand and shoves them against James’ lips, making him open up. “Suck,” he commands and James does, his eyes fluttering shut and his mouth making all these filthy noises that Keith loves. Then, he bites Keith’s fingers. Keith yelps, just a little at the shock and digs his fingers into James’ jaw harder, digging his nails in enough so that James’ gasps and lets his fingers go.

He takes his fingers from James’ mouth and gets a hand between his thighs. James ruts into it helplessly for a moment before he stiffens his body and gains enough control to stop wiggling under Keith’s teasing touch. Keith presses his fingers down on James’s dick, running it up and down too light and slow and none of the ways he knows James likes it. James _whines_. 

Keith’s almost positive James has a cock that Keith could fuck him with but he doesn’t bother asking because even if James told him he doesn’t think that either of them are really in the mood to use it, not with how James is acting right now. 

Every muscle in his body is taught with the effort of not reacting to Keith’s touch. Even his breaths are controlled. Keith’s never seen James fight a touch he so obviously wants and needs. Of course, that’s when James shoves him.

Keith’s almost embarrassed as he loses his footing and tips backwards. When he hands hard on the floor of James’ room his entire body stings with it. James is on him in an instant, straddling his hips with his earlier attitude plastered clearly on his face once more. Keith— frustrated and angry and so fucking turned on— reaches the hand that he’d been using on James, still wet with his spit and come, up to punch him, or maybe slap him or maybe just grab his face and some semblance of control all at once. James catches his hand mid-air and Keith lets out an a groan that’s furious and pathetic all at once.

James says, “You don’t even know what to do with yourself, do you?” The first words that they’ve said since Keith showed up at his door are just as cocky and knowing as Keith imagined. 

“I know _exactly_ what I’m doing.”

James laughs, actually laughs, says, “Yeah, writhing on the floor like some kind of slut because daddy didn’t let you come.” 

Keith doesn’t reply because in that moment he becomes all too aware of the unconscious movements of his body against James’, trying to get a little bit of friction. James gives him some, rolling his hips just so and letting their dicks brush together. Keith can’t help the noise that leaves his throat, feels his cheeks flush hot because of it. “Face it, you’re just a pet, _Daddy’s Boy_.”

“I am not a pet, _bitch_.” Keith spits, firing back with Shiro’s favorite name for James while James is on his knees. 

James snakes a hand between them and they both give a sigh. Keith’s body betrays him once more, pushing up into the touch. “Daddy didn’t want to play with you tonight so you had to come here to get fucked on my floor. Right, Keith?”

The words sting, piss him off and get him struggling for control against James once more. It backfires, and James’ hand presses deliciously against Keith’s cock, causing another noise to be ripped from his throat before he can stop it. “Look at you. You’re dripping for me.”

Keith’s seething and for a second he’s perfectly still— caught between how badly he needs this and how angry he is. James is right, Keith’s dripping wet and throbbing for it and both of them know that he’s closer that he will ever admit. James rolls his hips again, angles his hand so that his fingers are circling Keith’s hole.

Keith moans, full on and so fucking pathetic. Then with the hand that James doesn’t have trapped he reaches up and uses it to wrap into James’ hair. He doesn’t have much to work with in this state but the gasp it elicits from James is exquisite. In retaliation, James plays dirty, shifting his hand once more and shoving two fingers inside of Keith in one go. Keith’s body tightens up around them and he cries out at the feeling of finally, _finally_ having something inside him to fill him up. He won’t be long like this, knows he’ll making an embarrassing mess of them both but at this moment as James starts thrusting his fingers in and out of Keith, he doesn’t care.

The rhythm is shit and the angle isn’t deep enough but Keith’s so far gone, so close and so worked up after just a few thrusts that as soon as James asks, “What would daddy say if he knew I was playing with his precious pet?” His legs start to twitch and when James says, “You coming already, slut?” Keith does, shame flushing his face and twisting his gut up as he cries out. He does make a mess, does writhe like a slut just like James said, does close his eyes and rock his hips and rides James’ fingers through it. 

James doesn’t move his fingers from inside of him. Keith breathes and James just laughs. 

James makes him come again and again, turning him into jelly, to mush, taking the fight out of him as easily as he put it there.

Keith makes James come too, let’s James use him. They end up in the bed, the fire between them falling down to gentle embers. 

Keith comes back to himself after a few minutes of panting and he feels a sense of deja vu so heavy that he needs to drop something between them to break it up. “We’re not built to last,” Keith tells him. He keeps looking up at James’ ceiling. He’s said the words before and was looking at James then. 

Beside him, James huffs and the words out of his mouth surprise Keith to his core. “We’re meant to burn at both ends until we turn to ash,” James says, finishing the phrase that Keith had told him all those years ago. 

Keith doesn’t respond to it, but after a few minutes he says, “I have to go home soon.” 

“Yeah,” James replies, and Keith does look at him then. James is looking up at his ceiling just as Keith was, expression blank. “I know you do.” 

The next day Keith leaves Earth once more. Shiro and Atlas team are set to meet them in two weeks when they’re properly prepared.They’ll be gone a while, checking the status of the universe at large. He doesn’t say goodbye to James this time either. 

 

 

 

 

**Author's Note:**

> You can find me on twitter at Gay_shiro


End file.
